Embodiments of the present invention relate generally to the field of information searches and more particularly to searches of the contents of a webpage, where the search feature is provided as part of the webpage.
Webpages can be very short containing little textual information or may include mostly graphics with little other information. In other cases, a webpage can be very long and contain a large amount of textual information. In such cases, locating a specific word or phrase of interest to a user can be difficult. For example, a search using a common or popular search engine may discover a page with hundreds or thousands or more words with only a few, but relevant, occurrences of the user's search term. For the user to determine how relevant this information is to him, he may need to read or scan a significant portion of the document to determine how or why the search engine detected this page. For very long pages, trying to locate information in this way can be very time consuming. In some cases, the user may not even find the relevant information before giving up.
Many, although not all, web browsers today have a built-in search feature that allows a user to search for text occurring on a currently viewed webpage. For example, Microsoft Internet Explorer provides a “Find (on This Page)” function available under the “Edit” selection of the top menu bar. With this function a user can enter a string for which the browser will search. The browser then jumps or scrolls the page directly to the first occurrence of text that matches the search string. Subsequent occurrences of the string can be found by selecting a “Find Next” button which causes the page to scroll to display the subsequent occurrences.
However, not all browsers offer such a function. Furthermore, these browser-based searches are rather limited in their functionality. They allow a user to search for occurrences of a particular sting and may allow a user to select searching forward or backward but no other functionality is provided. No further functionality is provided. For example, available browser based searches are limited to searching the visible portions of a webpage and cannot search a header, footer, or metadata of a webpage and are limited to searching the entire, visible contents of the page. That is, they do not allow the developer or user of the browser to specify portions of the page to be searched and cannot search portions of the webpage that are not being displayed. Finally, the functionality of a browser-based search is strictly limited to that supplied by the code of the browser. The developer of the webpage has no control over this functionality and cannot expand or modify this functionality to suit the content of his webpage or service.
Hence, there is a need for methods and systems that allow for searching the contents of a webpage regardless of the browser used to view the page.